package main

import "fmt"

func main01() {
	//去菜市场买菜 黄瓜3.25元/斤 买5斤
	//对于小数和整型之间也需要进行数据转换才能够使用

	price := 3.25 // result=float64
	weight := 5   // result=int

	//fmt.Printf("%T\n",price)进行数据推导，%T\n将数据类型进行推导
	//fmt.Printf("%T\n",weight)

	//sum := price * weight

	//fmt.Println(sum)//./9、类型转换.go:14:15: invalid operation: price * weight (mismatched types float64 and int)
	//这里会进行报错，因为go语言数据有不同的类型，不同类型数据之间进行混合计算需要涉及到数据类型的转换问题

	sum := price * float64(weight)       //将数据类型重量转换为5.0就可以进行计算
	sum1 := int(price) * weight          //将浮点型转换为整数，会忽略所有的小数部分
	sum2 := int(price * float64(weight)) //数据表达式的结果，作为数据的转换

	fmt.Println(sum)
	fmt.Println(sum1)
	fmt.Println(sum2)
}

type int1 = int
type int2 = int

func main() {
	var a int = 9
	var b int16 = 100
	fmt.Println(a * int(b)) //当然如果是int类型中它的数据转换格式也需要进行一致，否则也不能计算

	ch := '中' //在中文编码当中，默认中文对应rune,也就是int32数据类型，所以这个和int32的数量类型进行计算没有问题
	var c int32 = 9
	fmt.Println(ch * c)

	var d int1 = 88
	var e int2 = 99
	fmt.Println(d + e)

}
